home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 2003 May
/
PCWorld_2003-05_cd.bin
/
Software
/
Topware
/
sandra
/
san944EN.exe
/
{app}
/
examples
/
mySQL Schema.sql
< prev
next >
Wrap
Text File
|
2002-07-28
|
3KB
|
138 lines
#
# mySQL 3.23+ Schema for Sandra Report
#
# Database is assumed to have been created already.
# No size settings included, please add as required.
#
# Copyright 2001-2002, C. A. Silasi, SiSoftware.
# All Rights Reserved.
#
# Kill all tables
#
DROP TABLE Item;
DROP TABLE ItemGroup;
DROP TABLE Device;
DROP TABLE Class;
DROP TABLE Module;
DROP TABLE Report;
DROP TABLE IDCount;
#
# Create new tables
#
CREATE TABLE Report (
ID INT PRIMARY KEY,
ProgramName VARCHAR(255),
ProgramVersion VARCHAR(255),
RegisteredUser VARCHAR(255),
RegisteredCompany VARCHAR(255),
LicenceStatus VARCHAR(255),
LicenceExtra VARCHAR(255),
UserID VARCHAR(255),
HostName VARCHAR(255),
SystemID VARCHAR(255),
WebUserID VARCHAR(255),
RunID VARCHAR(255),
RunDate DATETIME,
Completed BIT NOT NULL
);
CREATE TABLE Module (
ID INT PRIMARY KEY,
ReportID INT NOT NULL,
Name VARCHAR(255) NOT NULL,
TypeID INT NOT NULL,
HasClass BIT NOT NULL,
HasDevice BIT NOT NULL,
HelpID INT NOT NULL,
CONSTRAINT cnstMRID FOREIGN KEY(ReportID) REFERENCES Report(ID)
);
CREATE TABLE Class (
ID INT PRIMARY KEY,
ModuleID INT NOT NULL,
Name VARCHAR(255) NOT NULL,
TypeID INT NOT NULL,
HelpID INT NOT NULL,
CONSTRAINT cnstCMID FOREIGN KEY(ModuleID) REFERENCES Module(ID)
);
CREATE TABLE Device (
ID INT PRIMARY KEY,
ModuleID INT NOT NULL,
ClassID INT,
Name VARCHAR(255) NOT NULL,
TypeID INT NOT NULL,
HelpID INT NOT NULL,
CONSTRAINT cnstDMID FOREIGN KEY(ModuleID) REFERENCES Module(ID)
);
CREATE TABLE ItemGroup (
ID INT PRIMARY KEY,
ModuleID INT NOT NULL,
ClassID INT,
DeviceID INT,
Name VARCHAR(255) NOT NULL,
TypeID INT NOT NULL,
HelpID INT NOT NULL,
CONSTRAINT cnstGMID FOREIGN KEY(ModuleID) REFERENCES Module(ID)
);
CREATE TABLE Item (
ID INT PRIMARY KEY,
ModuleID INT NOT NULL,
GroupID INT,
Name VARCHAR(255) NOT NULL,
DataValue VARCHAR(255),
IconID INT NOT NULL,
TypeID INT NOT NULL,
HelpID INT NOT NULL,
CONSTRAINT cnstIMID FOREIGN KEY(ModuleID) REFERENCES Module(ID)
);
CREATE TABLE IDCount (
TableName VARCHAR(10) PRIMARY KEY,
CurrentID INT NOT NULL
);
#
# Set-up keys/indexes
#
CREATE INDEX ndxUserID ON Report (UserID);
CREATE INDEX ndxSystemID ON Report (SystemID);
CREATE INDEX ndxWebUserID ON Report (WebUserID);
CREATE INDEX ndxModuleName ON Module (Name);
CREATE INDEX ndxItemName ON Item (Name);
#
# Inserts
#
INSERT INTO IDCount (TableName, CurrentID) VALUES ('Item', 1);
INSERT INTO IDCount (TableName, CurrentID) VALUES ('ItemGroup', 1);
INSERT INTO IDCount (TableName, CurrentID) VALUES ('Device', 1);
INSERT INTO IDCount (TableName, CurrentID) VALUES ('Class', 1);
INSERT INTO IDCount (TableName, CurrentID) VALUES ('Module', 1);
INSERT INTO IDCount (TableName, CurrentID) VALUES ('Report', 1);